#ifndef FILESYS_H
#define FILESYS_H

#define CLNT_ROOT_DIR "./clientRootDir"
#define SERV_ROOT_DIR "./serverRootDir"
#define DIR_MAX_SIZE 500
#define MAX_FILENAME_SIZE 100
#define MAX_FILEWRITE_SIZE 5000
#define BUFFER_SIZE 10000
#define LS_INFO_SZ 1024
#define DELIMITER '\377'

#define FSTAT_NOMAL     13
#define FSTAT_REG       23
#define FSTAT_DIR       33

#define FSTAT_IS_ROOTDIR 43
#define FSTAT_DIR_NOCHANGE 53
#define FSTAT_DIR_CHANGED 63
#define FSTAT_DIR_FATHER 73

#define FSTAT_NO_SUCH_FILE -13
#define FSTAT_PUT_ERROR -23
#define FSTAT_GET_ERROR -33
#define FSTAT_OPEN_ERROR -44

// 展示目录
void fsLs(char *curPath,char *ls_info);

// 切换目录
int fsCd(char *root_dir, char *rlat_dir, int *dir_depth);

// 查找对应文件或路径是否存在于指定根目录下
int fschkPath(char *root_dir, char *rlat_path);

//组合相对路径到根路径上
char *mergePath(char *root_dir, char *rlat_dir);

#endif